package com.atwisdom.star.core.bsl.basicClass;

import com.alibaba.fastjson.JSONObject;
import com.atwisdom.star.common.vo.ActionData;
import com.atwisdom.star.common.vo.PageInfo;
import com.atwisdom.star.common.vo.ResultInfo;
import com.atwisdom.star.exception.pojo.BusinessException;

public interface TextureLibBslService {

    /**
     * 添加模型
     * @param actionData 参数
     * @return 返回值
     */
    ResultInfo<?> add(ActionData<JSONObject> actionData) throws BusinessException;

    /**
     * 批量添加模型
     * @param actionData 参数
     * @return 返回值
     */
    ResultInfo<?> batchAdd(ActionData<JSONObject> actionData)  throws BusinessException;

    /**
     * 更新
     * @param actionData 参数
     * @return 返回值
     */
    ResultInfo<?> update(ActionData<JSONObject> actionData) throws BusinessException;

    /**
     * 批量更新
     * @param actionData 参数
     * @return 返回值
     */
    ResultInfo<?> batchUpdate(ActionData<JSONObject> actionData) throws BusinessException;


    /**
     * 删除
     *
     * @param actionData 参数
     * @return 返回值
     */
    ResultInfo<?> deleteByIds(ActionData<JSONObject> actionData) throws BusinessException;

    /**
     * 简单查询
     * @param actionData 参数
     * @return 返回值
     */
    ResultInfo<?> query(ActionData<JSONObject> actionData) throws BusinessException;


    ResultInfo<?> queryInfo(ActionData<JSONObject> actionData);

    ResultInfo<?> queryByIds(ActionData<JSONObject> actionData);

    /**
     * 分页查询
     * @param actionData 参数
     * @return 返回值
     */
    ResultInfo<?> queryByPage(ActionData<JSONObject> actionData) throws BusinessException;

    /**
     * 分页查询
     * @param actionData 参数
     * @return 返回值
     */
    ResultInfo<?> queryInfoByPage(ActionData<JSONObject> actionData) throws BusinessException;
}
